class StudentsSystem():
    def __init__(self):
        self.stus = []
    # 增加，修改，删除，显示
    def meun(self):
        #打印主界面
        print('=' * 50)
        print('\t\t学生管理系统1.0版本')
        print('\t\t1.添加学生信息')
        print('\t\t2.删除学生信息')
        print('\t\t3.修改学生信息')
        print('\t\t4.查找学生信息')
        print('\t\t5.显示学生信息')
        print('\t\t6.退出学生系统')
        print('=' * 50)

    def add_stu(self):
        # 增添学生信息
        self.student = {}
        name = input('请输入姓名:')
        no = input('请输入学号:')
        phone = input('请输入手机号:')

        self.student['name'] = name
        self.student['no'] = no
        self.student['phone'] =phone
        self.stus.append(self.student)


    def delete_stu(self):
        # 删除学生信息
        del_no = input('请输入需要删除的学生学号:')
        flag = True
        for s in self.stus:
            if del_no == s.get('no'):
                self.stus.remove(s)
                flag = False
                break
        if flag:
            print('学号为:%s,该名同学不存在' % del_no)



    def update_stu(self):
        # 修改学生信息
        upd_no = input('请输入需要修改的学生学号:')
        flag = True
        for s in self.stus:
            if upd_no == s.get('no'):
                new_name = input('请输入新的姓名:')
                s['name'] = new_name
                flag = False
                break
        if flag:
            print('学号为:%s,该名同学不存在' % upd_no)

    def find_stu(self):
        # 查找学生信息
        find_no = input('请输入需要查找的学生学号:')
        flag = True
        for s in self.stus:
            if find_no == s.get('no'):
                print('找到了学号为:%s的同学' % find_no)
                print('姓名:', s.get('name'))
                print('手机号:', s.get('phone'))
                flag = False
                break
        if flag:
            print('学号为:%s的同学不存在' % find_no)

    def show(self):
        # 显示所有学生信息
        print('\t\t\t当前学生信息')
        print('~' * 50)
        print('{:<10}\t{:<10}\t{:<15}'.format('姓名','学号', '手机号'))
        print('~' * 50)
        for s in self.stus:
            print('{:<10}\t{:<10}\t{:<15}'.format(s.get('name'), s.get('no'), s.get('phone')))
        print('~' * 50)

    def start(self):
        # 通用菜单
        self.meun()
        while True:
            print()
            print('\t\t操作指令')
            print('~' * 50)
            print('1:增加|2:删除|3:修改|4:查找|5:显示|6:退出系统')
            print('~' * 50)
            num = input('请输入上面的操作指令:')
            if num == '1':
                self.add_stu()
            elif num == '2':
                self.delete_stu()
            elif num == '3':
                self.update_stu()
            elif num == '4':
                self.find_stu()
            elif num == '5':
                self.show()
            elif num == '6':
                import sys
                sys.exit()
            else:
                print('请输入正确的指令!')

# 调用函数
s = StudentsSystem()
s.start()


